1. Field of the Invention
This invention relates generally to a controller area network (CAN) that controls transmission of information between a plurality of electronic control units (ECU) located within a vehicle and, more particularly, to an information loss prevention technique used in a CAN system.
2. Description of the Related Art
Modern times have seen the use of various innovative features in automobiles. These features include adaptive cruise control, collision avoidance and stability control systems. Implementation of such systems typically includes the use of a distributed controller area network (CAN) system having a plurality of electronic control unit (ECU) nodes and a CAN bus for transmission of messages between these nodes. In the distributed CAN system, normally there is no clock synchronization among the ECU nodes. Due to lack of synchronization, the clocks of the ECU nodes drift away from each other. Typically, at a clock drift rate of ±30 ppm (parts per million) at a standard temperature (77° F.), a clock could drift by 108 milliseconds in one hour. This drifting of clocks can cause message loss in the CAN system, which could have serious implications. Further, a sequence of messages could get lost in the CAN system due to a combination of other factors in addition to clock drift, such as finite buffer size, transmission jitter, etc.
One existing approach to prevent message loss includes over sampling so that a single message loss may not effect the functioning of the system. However, this approach cannot be used to overcome a sequence of message losses. This is because in order to overcome a sequence of n message losses, the sampling rate and the software task execution period should be n times faster. This is generally impossible in cases where n≧3 because of a large consumption of resources and hardware restrictions.
Another approach to prevent message loss is to provide a digital clock for each ECU node and to synchronize these clocks. However, clock synchronization may have a high overhead because those synchronizations are usually performed about every 15 ms (millisecond) for a drift rate of ±30 ppm and some synchronization mechanisms require specific hardware circuits. Currently, the operating system for task activation is based on the quartz crystal clock of the ECU nodes rather than the digital clock. So, in order to prevent message loss in the system through this approach a customized operating system is needed to be used with the digital clocks.